package cc.autoapi.pucong.auto.flow.persistence.repository.node;

import cc.autoapi.pucong.auto.flow.persistence.po.node.NodeInfoPo;
import com.alibaba.fastjson2.JSONObject;
import org.python.core.PyObject;

import java.util.List;
import java.util.Map;

/**
 * @author pucong
 * @description 节点信息 service接口
 * @create 2024-09-23
 */
public interface NodeInfoService {

    void deleteByGroupIds(List<String> groupIds);

    Object javaExeTest(String nodeScript, JSONObject jsonObjectParams);

    Object jsExeTest(String jsScript2, JSONObject jsonObjectParams);

    Object pythonExeTest(String python2, Map<PyObject, PyObject> mapObjectParams);

    List<NodeInfoPo> list(int whetherEnable);

    Boolean save(NodeInfoPo nodeInfo);

    Boolean updateById(NodeInfoPo nodeInfoUpdate);

    Boolean removeBatchByIds(List<String> ids);

    NodeInfoPo getById(String id);

    List<NodeInfoPo> list(String nodeName, String groupId, Integer whetherEnable);
}
